package com.yunxi.order.pojo;

import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.yunxi.core.web.DateJsonDeserializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 发票表
 * </p>
 *
 * @author 
 * @since 2019-05-29
 */
@Data
@EqualsAndHashCode(callSuper = false)

@ApiModel(value="OrderReceipt对象", description="发票表")
public class OrderReceiptVO implements Serializable {

    @ApiModelProperty(value = "主键")
    private String receiptId;

    @ApiModelProperty(value = "订货单号")
    private String orderVehicleId;

    @ApiModelProperty(value = "渠道商编号")
    private String partnerCode;

    @ApiModelProperty(value = "行号")
    private String posnr;

    @ApiModelProperty(value = "ERP发票号")
    private String vbeln;

    @ApiModelProperty(value = "金税发票号")
    private String vatno;

    @ApiModelProperty(value = "开票金额")
    private String netwr;

    @ApiModelProperty(value = "开票日期")
    private String fkdat;

    @ApiModelProperty(value = "SAP销售订单号")
    private String zuonr;

    @ApiModelProperty(value = "开票类型")
    private String fkart;

    @ApiModelProperty(value = "销售组织")
    private String vkorg;

    @ApiModelProperty(value = "预留字段1")
    private String zobl1;

    @ApiModelProperty(value = "预留字段2")
    private String zobl2;

    @ApiModelProperty(value = "预留字段3")
    private String zobl3;

    @ApiModelProperty(value = "预留字段4")
    private String zobl4;

    @ApiModelProperty(value = "预留字段5")
    private String zobl5;

    @ApiModelProperty(value = "创建日期")
    private Date createDate;

    @ApiModelProperty(value = "创建人")
    private String createBy;

    @ApiModelProperty(value = "创建人名称")
    private String userName;

    @ApiModelProperty(value = "是否删除（1是 0否）")
    private Integer isDel;

    @ApiModelProperty(value = "是否启用（1启动 0不启用）")
    private Integer status;

    @ApiModelProperty(value = "备注")
    private String memo;

    @ApiModelProperty(value = "版本")
    private Integer version;

    @ApiModelProperty(value = "是否签收")
    private Integer isSign;

    @ApiModelProperty(value = "签收时间")
    private Date signDate;

    @ApiModelProperty(value = "开票日期开始")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonDeserialize(using=DateJsonDeserializer.class)
    private Date beginDate;
    @ApiModelProperty(value = "开票日期结束")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonDeserialize(using=DateJsonDeserializer.class)
    private Date endDate;
}
